package com.tlvip.io.bio;

import java.io.IOException;
import java.net.Socket;

/**
 * <p>文件描述：</p>
 * <p>版权所有： 版权所有(C)2016-2099</p>
 * <p>Life is short,we need passion</p>
 * <p>内容摘要： </p>
 * <p>其他说明： </p>
 * Date 2019-12-16</p>
 * Author mac
 *
 * @version 1.0
 */
//客户端代码
public class SocketClient {
    public static void main(String[] args) throws IOException {
        // 断点1，唤醒服务端accept方法，解除服务端阻塞状态
        Socket socket = new Socket("localhost", 9000);
        // 断点2，向服务端发送数据，解除服务端read无数据时的阻塞
        socket.getOutputStream().write("HelloServer".getBytes());
        socket.getOutputStream().flush();
        System.out.println("向服务端发送数据结束");
        byte[] bytes = new byte[1024];

        // 断点3，等待服务端写入数据，解除客户端阻塞
        int read = socket.getInputStream().read(bytes);
        System.out.println("接收到服务端的数据:" + new String(bytes, 0, read));

//        直接使用bytes数组new String时，会产生空值
//        System.out.println("接收到服务端的数据:" + new String(bytes));
        socket.close();
    }
}
